package com.compasudea.polla.persistencia.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;

import com.compasudea.polla.negocio.dto.EquipoDTO;
import com.compasudea.polla.util.ConexionBD;
import com.compasudea.polla.util.ObjectPolla;

public class DatabaseEquipoDAO extends ObjectPolla implements EquipoDAO {

	@Override
	public Collection<EquipoDTO> getAllEquipos() {
		ConexionBD adminConexiones = new ConexionBD();
		Connection con = adminConexiones.getConexion();

		List<EquipoDTO> equipos = new ArrayList<EquipoDTO>();
		StringBuffer query = new StringBuffer("SELECT E.id_equipo,  E.nombre_equipo,  E.puntos,  E.grupo,  E.pjugados,  " +
											  "E.pganados,  E.pperdidos,  E.pempatados,  E.gfavor,  E.gcontra FROM Equipos E");
		PreparedStatement pstmt = null;
		ResultSet rs = null;

		try {
			pstmt = con.prepareStatement(query.toString());
			rs = pstmt.executeQuery();
            EquipoDTO equipo = null;
			while (rs.next()) {
				//obtiene la informacion de los equipos.
		    	  equipo = new EquipoDTO();
		    	  equipo.setIdEquipo(rs.getInt("ID_EQUIPO"));
		    	  equipo.setNombre(rs.getString("NOMBRE_EQUIPO"));
		    	  equipo.setBandera(imagenesBundle.getString((equipo.getNombre()).replace(" ", "_")));
		    	  equipo.setGrupo(rs.getString("GRUPO"));
		    	  equipo.setPj(rs.getInt("PJUGADOS"));
		    	  equipo.setPg(rs.getInt("PGANADOS"));
		    	  equipo.setPe(rs.getInt("PEMPATADOS"));
		    	  equipo.setPp(rs.getInt("PPERDIDOS"));
		    	  equipo.setGf(rs.getInt("GFAVOR"));
		    	  equipo.setGc(rs.getInt("GCONTRA"));
		    	  equipo.setPuntos(rs.getInt("PUNTOS"));
		    	  equipos.add(equipo);
			}

		} catch (SQLException e) {
		logger.info("Error DB"+e.getMessage());
		}

		return equipos;
	}

}
